package com.zhiche.lisa.bms.service.arfund;

import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.IService;
import com.zhiche.lisa.bms.dao.model.arfund.ArFund;
import com.zhiche.lisa.bms.pojo.vo.arFund.ArFundVO;

import java.util.List;

/**
 * <p>
 * 其他扣款 服务类
 * </p>
 *
 * @author hongbo
 * @since 2018-09-20
 */
public interface ArFundService extends IService<ArFund> {
	/**
	 * 其他扣款分页查询
	 *
	 * @param page
	 * @return
	 */
	Page<ArFund> queryArFundLinePage(Page<ArFundVO> page);

	/**
	 * 根据支付申请Id，查询其他扣款列表
	 *
	 * @param payId
	 * @return
	 */
	List<ArFund> getArFundLineByPayIdList(Long payId);

	/**
	 * 其他扣款项
	 *
	 * @param list
	 * @return
	 */
	List<String> insertArFund(List<ArFund> list);

	/**
	 * 其他扣款批量删除
	 *
	 * @param ids
	 */
	void deleteArFund(List<Long> ids);

	/**
	 * 其他扣款审核
	 *
	 * @param ids
	 * @param token
	 * @return
	 */
	List<String> examineArFund(List<Long> ids, String token);

	/**
	 * 根据其他扣款Id，查询其他扣款列表
	 *
	 * @param ids
	 * @return
	 */
	List<ArFund> getArFundById(List<Long> ids);

	/**
	 * 根据应付账款ID和多个其他扣款ID,得到其他扣款信息
	 *
	 * @param feePayableId
	 * @param ids
	 * @return 匹配的arfundId
	 */
	List<Long> getFeePayableSumByFeepIdAndIds(Long feePayableId, List<Long> ids);
}
